package ${packageName}.service;

import ${packageName}.bean.${classInfo.className};
import ${packageName}.model.${classInfo.className}Model;
import com.shopx.cmm.DTO.PageDTO;
import java.util.List;
//import com.shopx.base.exception.ShopxException;

/**
 * TODO
 * @author ${authorName}
 * @className: ${classInfo.classComment}
 * @date ${.now?string('yyyy-MM-dd')}
 */
public interface I${classInfo.className}Service {

    /**
     * 查询明细记录
     * @author ${authorName}
     * @date ${.now?string('yyyy-MM-dd')}
     * @param ${classInfo.className?uncap_first}
     * @return ${classInfo.className}Model
     */
    ${classInfo.className}Model selectByPrimaryKey(${classInfo.className} ${classInfo.className?uncap_first});

    /**
     * 新增记录
     * @author ${authorName}
     * @date ${.now?string('yyyy-MM-dd')}
     * @param ${classInfo.className?uncap_first}
     * @return int
     */
    int insertSelective(${classInfo.className} ${classInfo.className?uncap_first});

    /**
     * 修改记录
     * @author ${authorName}
     * @date ${.now?string('yyyy-MM-dd')}
     * @param ${classInfo.className?uncap_first}
     * @return int
     */
    int updateByPrimaryKeySelective(${classInfo.className} ${classInfo.className?uncap_first});

    /**
     * 删除记录
     * @author ${authorName}
     * @date ${.now?string('yyyy-MM-dd')}
     * @param ${classInfo.className?uncap_first}
     * @return int
     */
    int deleteByPrimaryKey(${classInfo.className} ${classInfo.className?uncap_first});
	

	/**
     * 查询总记录数
     * @author ${authorName}
     * @date ${.now?string('yyyy-MM-dd')}
     * @param ${classInfo.className?uncap_first}Model
     * @return int
     */
    int selectCount(${classInfo.className}Model ${classInfo.className?uncap_first}Model);

    /**
     * 查询列表
     * @author ${authorName}
     * @date ${.now?string('yyyy-MM-dd')}
     * @param ${classInfo.className?uncap_first}Model
     * @return List<${classInfo.className}Model>
     */
    List<${classInfo.className}Model> selectList(${classInfo.className}Model ${classInfo.className?uncap_first}Model);

    /**
     * 分页查询
     * @author ${authorName}
     * @date ${.now?string('yyyy-MM-dd')}
     * @param ${classInfo.className?uncap_first}Model
     * @return PageModel<${classInfo.className}Model>
     */
    PageDTO<${classInfo.className}Model> getListPage(${classInfo.className}Model ${classInfo.className?uncap_first}Model);
	
}
